package com.cv.platform.controller.platform.comment.vo.reply;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * 视频平台 - 视频评论回复数据 Response VO
 * 
 * @author Charles_XDXD
 */
@Data
@Schema(name = "视频平台 - 视频评论回复数据 Response VO")
public class CvCommentReplyRespVO {

    /**
     * 回复编号
     */
    @Schema(description = "回复编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
    private Long id;

    /**
     * 评论编号
     */
    @Schema(description = "评论编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
    private Long commentId;

    /**
     * 回复用户编号
     */
    @Schema(description = "回复用户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
    private Long userId;

    /**
     * 回复用户昵称
     */
    @Schema(description = "回复用户昵称", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
    private String nickname;

    /**
     * 回复用户头像
     */
    @Schema(description = "回复用户头像", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
    private Long avatar;

    /**
     * 回复用户头像 URL
     */
    @Schema(description = "回复用户头像 URL")
    private String avatarUrl;

    /**
     * 目标用户编号
     */
    @Schema(description = "目标用户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
    private Long targetUserId;

    /**
     * 目标用户昵称
     */
    @Schema(description = "目标用户昵称", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
    private String targetNickname;

    /**
     * 回复内容
     */
    @Schema(description = "回复内容", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
    private String content;

    /**
     * 回复时间
     */
    @Schema(description = "回复时间", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
    private LocalDateTime createTime;

    /**
     * 是否点赞
     */
    @Schema(description = "是否点赞", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
    private Boolean isLike;

    /**
     * 点赞数量
     */
    @Schema(description = "点赞数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
    private Integer likeCount;

    /**
     * 是否踩
     */
    @Schema(description = "是否踩", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
    private Boolean isDislike;

    /**
     * 踩数量
     */
    @Schema(description = "踩数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
    private Integer dislikeCount;

}
